/**
 * 
 */
package br.com.skynix.tcmc.controller.telemarketing.oportunidades;

import java.util.List;

import javax.annotation.Resource;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;

import org.springframework.stereotype.Controller;

import br.com.skynix.tcmc.base.managedbeans.AbstractCRUDManagedBean;
import br.com.skynix.tcmc.base.spring.IServiceAuditavel;
import br.com.skynix.tcmc.model.oportunidade.FaseOportunidade;
import br.com.skynix.tcmc.model.oportunidade.Oportunidade;
import br.com.skynix.tcmc.model.oportunidade.OrigemOportunidade;
import br.com.skynix.tcmc.model.oportunidade.TipoOportunidade;
import br.com.skynix.tcmc.service.configuracao.geral.fases_oportunidades.FaseOportunidadeService;
import br.com.skynix.tcmc.service.configuracao.geral.origens_oportunidades.OrigemOportunidadeService;
import br.com.skynix.tcmc.service.configuracao.geral.tipos_oportunidades.TipoOportunidadeService;
import br.com.skynix.tcmc.service.telemarketing.oportunidades.OportunidadeService;

/**
 * @author davi
 * 
 */
@ManagedBean
@RequestScoped
@Controller
public class OportunidadeMB extends AbstractCRUDManagedBean<Oportunidade> {
	@Resource
	private OportunidadeService oportunidadeService;

	@Resource
	private FaseOportunidadeService faseOportunidadeService;

	@Resource
	private OrigemOportunidadeService origemOportunidadeService;

	@Resource
	private TipoOportunidadeService tipoOportunidadeService;

	public OportunidadeMB() {
		setModeloPesquisa(new Oportunidade());
	}

	/*
	 * (non-Javadoc)
	 * 
	 * @see
	 * br.com.skynix.tcmc.base.managedbeans.AbstractCRUDManagedBean#getService()
	 */
	@Override
	protected IServiceAuditavel<Oportunidade> getService() {
		return oportunidadeService;
	}

	/*
	 * (non-Javadoc)
	 * 
	 * @see br.com.skynix.tcmc.base.managedbeans.AbstractCRUDManagedBean#
	 * getPathParaModuloCRUD()
	 */
	@Override
	protected String getPathParaModuloCRUD() {
		return formatPath("telemarketing/oportunidades/oportunidade_crud_view");
	}

	public List<FaseOportunidade> getListaFaseOportunidade() {
		return faseOportunidadeService.listarTodos();
	}

	public List<OrigemOportunidade> getListaOrigemOportunidade() {
		return origemOportunidadeService.listarTodos();
	}

	public List<TipoOportunidade> getListaTipoOportunidade() {
		return tipoOportunidadeService.listarTodos();
	}
}
